home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 3
/
Aminet 3 - July 1994.iso
/
Aminet
/
gfx
/
pbm
/
source1.lha
/
netpbm
/
pgm
/
SMakefile
< prev
next >
Wrap
Makefile
|
1994-02-28
|
5KB
|
167 lines
# Makefile for pgm tools.
#
# Copyright (C) 1989, 1991 by Jef Poskanzer.
# Modified by Robert A. Knop Jr. (rknop@cco.caltech.edu) 940126 for Amiga SAS/C
# Merge is not currently supported by this makefile
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
# that the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation. This software is provided "as is" without express or
# implied warranty.
# Default values, usually overridden by top-level Makefile.
#CC = cc
#CC = gcc
#CC = gcc -ansi -pedantic -fcombine-regs -fpcc-struct-return
CC = sc
CFLAGS =
#CFLAGS = -g
#CFLAGS = -g -O
LDFLAGS = -s
#LDFLAGS =
INSTALLBINARIES = /bin
INSTALLMANUALS1 = /man/man1
SUFFIXMANUALS1 = 1
INSTALLMANUALS3 = /man/man3
SUFFIXMANUALS3 = 3
INSTALLMANUALS5 = /man/man5
SUFFIXMANUALS5 = 5
MANCP = copy
PBMDIR = /pbm
INCLUDEPBM = IDIR=$(PBMDIR)
LIBPBM = $(PBMDIR)/libpbm.lib
DEFPBM = $(PBMDIR)/pbm.h /pbmplus.h
DEFLIBPBM = $(PBMDIR)/libpbm.h
#SHELL = /bin/sh
INCLUDE = IDIR=/ $(INCLUDEPBM)
ALLCFLAGS = $(CFLAGS) $(INCLUDE)
LIBPGM = libpgm.lib
PORTBINARIES = asciitopgm hipstopgm lispmtopgm \
pbmtopgm pgmbentley pgmnoise \
pgmoil pgmtofs pgmtolispm \
psidtopgm spottopgm
MATHBINARIES = pgmcrater pgmedge pgmkernel pgmtexture rawtopgm \
bioradtopgm fstopgm pgmenhance \
pgmhist pgmnorm pgmramp pgmtopbm
BINARIES = $(PORTBINARIES) $(MATHBINARIES)
OBJECTS = asciitopgm bioradtopgm.o fstopgm.o hipstopgm.o
lispmtopgm.o pbmtopgm.o \
pgmbentley.o pgmenhance.o pgmhist.o pgmkernel.o pgmnoise.o \
pgmnorm.o pgmoil.o pgmramp.o pgmtofs.o pgmtolispm.o \
pgmtopbm.o psidtopgm.o spottopgm.o \
rawtopgm.o pgmcrater.o pgmedge.o pgmtexture.o
MANUALS1 = $(BINARIES)
MANUALS3 = libpgm
MANUALS5 = pgm
all: binaries
#all: merge
install: install.bin
#install: install.merge
binaries: $(BINARIES)
install.bin: binaries
# cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
copy $(BINARIES) TO $(INSTALLBINARIES) CLONE
#merge: pgmmerge
#pgmmerge: pgmmerge.c $(OBJECTS) $(LIBPGM) $(LIBPBM)
# $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(OBJECTS) -lm $(LIBPGM) $(LIBPBM)
#
#install.merge: install.pgmmerge
#install.pgmmerge: pgmmerge
# cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
# cp pgmmerge $(INSTALLBINARIES)
# cd $(INSTALLBINARIES) ; for i in $(BINARIES) ; do ln pgmmerge $$i ; done
# rm -f $(INSTALLBINARIES)/pgmmerge
install.man:
execute < <(T:install_man.temp)
foreach i in $(MANUALS1)
delete $(INSTALLMANUALS1)/$${i}.$(SUFFIXMANUALS1)
$(MANCP) $${i}.1 $(INSTALLMANUALS1)/$${i}.$(SUFFIXMANUALS1)
end
<
execute < <(T:install_man.temp)
foreach i in $(MANUALS3)
delete $(INSTALLMANUALS3)/$${i}.$(SUFFIXMANUALS3)
$(MANCP) $${i}.3 $(INSTALLMANUALS3)/$${i}.$(SUFFIXMANUALS3)
end
<
execute < <(T:install_man.temp)
foreach i in $(MANUALS5)
delete $(INSTALLMANUALS5)/$${i}.$(SUFFIXMANUALS5)
$(MANCP) $${i}.5 $(INSTALLMANUALS5)/$${i}.$(SUFFIXMANUALS5)
end
<
# Rule for plain programs.
$(PORTBINARIES): pgm.h $(DEFPBM) $(LIBPGM) $(LIBPBM)
$(CC) $(ALLCFLAGS) $(LDFLAGS) LINK $@.c $(LIBPGM) $(LIBPBM)
# Rule for math-dependent programs.
$(MATHBINARIES): pgm.h $(DEFPBM) $(LIBPGM) $(LIBPBM)
$(CC) $(ALLCFLAGS) $(LDFLAGS) MATH=I LINK $@.c $(LIBPGM) $(LIBPBM)
# commented out until merge supported RKNOP 931107
# Rule for objects.
#$(OBJECTS): pgm.h $(DEFPBM)
# $(CC) $(ALLCFLAGS) "-Dmain=$*_main" -c $*.c
# And libraries.
$(LIBPBM):
execute < <(T:smake_temp.com)
cd $(PBMDIR)
smake lib
<
lib: $(LIBPGM)
$(LIBPGM): libpgm1.o libpgm2.o
-delete $(LIBPGM)
oml $(LIBPGM) r libpgm1.o libpgm2.o
libpgm1.o: pgm.h $(DEFPBM) libpgm.h libpgm1.c
$(CC) $(ALLCFLAGS) MATH=I NOLINK libpgm1.c
libpgm2.o: pgm.h $(DEFPBM) libpgm.h libpgm2.c $(DEFLIBPBM)
$(CC) $(ALLCFLAGS) MATH=I NOLINK libpgm2.c
# Other dependencies.
asciitopgm asciitopgm.o: asciitopgm.c
bioradtopgm bioradtopgm.o: bioradtopgm.c
fstopgm fstopgm.o: fstopgm.c
hipstopgm hipstopgm.o: hipstopgm.c
lispmtopgm lispmtopgm.o: lispmtopgm.c
pbmtopgm pbmtopgm.o: pbmtopgm.c
pgmbentley pgmbentley.o: pgmbentley.c
pgmcrater pgmcrater.o: pgmcrater.c
pgmedge pgmedge.o: pgmedge.c
pgmenhance pgmenhance.o: pgmenhance.c
pgmhist pgmhist.o: pgmhist.c
pgmkernel pgmkernel.o: pgmkernel.c
pgmnoise pgmnoise.o: pgmnoise.c
pgmnorm pgmnorm.o: pgmnorm.c
pgmoil pgmoil.o: pgmoil.c
pgmramp pgmramp.o: pgmramp.c
pgmtexture pgmtexture.o: pgmtexture.c
pgmtopbm pgmtopbm.o: pgmtopbm.c dithers.h $(DEFPBM)
pgmtofs pgmtofs.o: pgmtofs.c
pgmtolispm pgmtolispm.o: pgmtolispm.c
psidtopgm psidtopgm.o: psidtopgm.c
rawtopgm rawtopgm.o: rawtopgm.c
spottopgm spottopgm.o: spottopgm.c
clean:
delete *.o *.lib *.lnk $(BINARIES)